package com.ruoyi.common.core.domain.entity;

import java.math.BigDecimal;
import java.util.List;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 服务项对象 serve_item
 * 
 * @author ruoyi
 * @date 2024-10-19
 */
public class ServeItem extends BaseEntity
{
    private static final long serialVersionUID = 1L;


    /** 服务项id */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** 服务编码 */
    @Excel(name = "服务编码")
    private String code;

    /** 服务类型id */
    @Excel(name = "服务类型id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long serveTypeId;

    /** 服务名称 */
    @Excel(name = "服务名称")
    private String name;

    /** 服务图标 */
    @Excel(name = "服务图标")
    private String serveItemIcon;

    /** 服务图片 */
    @Excel(name = "服务图片")
    private String img;

    /** 服务数量单位 */
    private Long unit;

    /** 服务描述 */
    @Excel(name = "服务描述")
    private String description;

    /** 服务详图 */
    private String detailImg;

    /** 参考价格 */
    @Excel(name = "参考价格")
    private BigDecimal referencePrice;

    /** 排序字段 */
    @Excel(name = "排序字段")
    private Long sortNum;

    /** 活动状态，0：草稿，1禁用，2启用 */
    @Excel(name = "活动状态，0：草稿，1禁用，2启用")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long activeStatus;

    /** 服务类型信息 */
    private List<ServeType> serveTypeList;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCode(String code) 
    {
        this.code = code;
    }

    public String getCode() 
    {
        return code;
    }
    public void setServeTypeId(Long serveTypeId) 
    {
        this.serveTypeId = serveTypeId;
    }

    public Long getServeTypeId() 
    {
        return serveTypeId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setServeItemIcon(String serveItemIcon) 
    {
        this.serveItemIcon = serveItemIcon;
    }

    public String getServeItemIcon() 
    {
        return serveItemIcon;
    }
    public void setImg(String img) 
    {
        this.img = img;
    }

    public String getImg() 
    {
        return img;
    }
    public void setUnit(Long unit) 
    {
        this.unit = unit;
    }

    public Long getUnit() 
    {
        return unit;
    }
    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }
    public void setDetailImg(String detailImg) 
    {
        this.detailImg = detailImg;
    }

    public String getDetailImg() 
    {
        return detailImg;
    }
    public void setReferencePrice(BigDecimal referencePrice) 
    {
        this.referencePrice = referencePrice;
    }

    public BigDecimal getReferencePrice() 
    {
        return referencePrice;
    }
    public void setSortNum(Long sortNum) 
    {
        this.sortNum = sortNum;
    }

    public Long getSortNum() 
    {
        return sortNum;
    }
    public void setActiveStatus(Long activeStatus) 
    {
        this.activeStatus = activeStatus;
    }

    public Long getActiveStatus() 
    {
        return activeStatus;
    }

    public List<ServeType> getServeTypeList()
    {
        return serveTypeList;
    }

    public void setServeTypeList(List<ServeType> serveTypeList)
    {
        this.serveTypeList = serveTypeList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("code", getCode())
            .append("serveTypeId", getServeTypeId())
            .append("name", getName())
            .append("serveItemIcon", getServeItemIcon())
            .append("img", getImg())
            .append("unit", getUnit())
            .append("description", getDescription())
            .append("detailImg", getDetailImg())
            .append("referencePrice", getReferencePrice())
            .append("sortNum", getSortNum())
            .append("activeStatus", getActiveStatus())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("serveTypeList", getServeTypeList())
            .toString();
    }
}
